package com.py.custom.tms.application.jvm.classload;

public class MyTest23 {

    public static void main(String[] args) {
        // java com.py.custom.tms.application.jvm.classload.MyTest23
        // 结论：和直接在idea运行，输出不一样。
        System.out.println(System.getProperty("sun.boot.class.path"));
        System.out.println(System.getProperty("java.ext.dirs"));
        System.out.println(System.getProperty("java.class.path"));

        //输出null；应用类加载器/扩展类加载器 是由启动类加载加载的；启动类加载内建于jvm中，由c/c++编写。
        System.out.println(ClassLoader.getSystemClassLoader().getClass().getClassLoader());
        System.out.println(ClassLoader.getSystemClassLoader().getParent().getClass().getClassLoader());

        System.out.println("--------");
        // java -Djava.system.class.loader=com.py.custom.tms.application.jvm.classload.MyTest16 com.py.custom.tms.application.jvm.classload.MyTest23
        // 指定系统类加载器；所指定的类加载器 的父类 是 系统类加载器
        System.out.println(System.getProperty("java.system.class.loader"));

        System.out.println(MyTest23.class.getClassLoader());

        System.out.println(ClassLoader.getSystemClassLoader());
    }
}
